深度学习解决机器阅读理解任务的研究进展

/* 版权声明:可以任意转载,转载时请标明文章原始出处和作者信息 .*/

                                       author: 张俊林



关于阅读理解,相信大家都不陌生,我们接受的传统语文教育中阅读理解是非常常规的考试内容,一般形式就是给你一篇文章,然后针对这些文章提出一些问题,学生回答这些问题来证明自己确实理解了文章所要传达的主旨内容,理解地越透彻,学生越能考出好的成绩。


如果有一天机器能够做类似于我们人类做阅读理解任务,那会发生什么呢?很明显教会机器学会阅读理解是自然语言处理(NLP)中的核心任务之一。如果哪一天机器真能具备相当高水准的阅读理解能力,那么很多应用便会体现出真正的智能。比如搜索引擎会在真正理解文章内容基础上去回答用户的问题,而不是目前这种以关键词匹配的方式去响应用户,这对于搜索引擎来说应该是个技术革命,其技术革新对产品带来的巨大变化,远非在关键词匹配之上加上链接分析这种技术进化所能比拟的。而众所周知,谷歌其实就是依赖链接分析技术起家的,所以如果机器阅读理解技术能够实用化,对搜索引擎领域带来的巨变很可能是颠覆性的。对话机器人如果换个角度看的话,其实也可以看做是一种特殊的阅读理解问题,其他很多领域也是如此,所以机器阅读理解是个非常值得关注的技术方向。


深度学习近年来在NLP中广泛使用,在机器阅读理解领域也是如此,深度学习技术的引入使得机器阅读理解能力在最近一年内有了大幅提高,本文对深度学习在机器阅读理解领域的技术应用及其进展进行了归纳梳理。

什么是机器阅读理解

机器阅读理解其实和人阅读理解面临的问题是类似的,不过为了降低任务难度,很多目前研究的机器阅读理解都将世界知识排除在外,采用人工构造的比较简单的数据集,以及回答一些相对简单的问题。给定需要机器理解的文章以及对应的问题,比较常见的任务形式包括人工合成问答、Cloze-style queries和选择题等方式。


人工合成问答是由人工构造的由若干简单事实形成的文章以及给出对应问题,要求机器阅读理解文章内容并作出一定的推理,从而得出正确答案,正确答案往往是文章中的某个关键词或者实体。比如图1展示了人工合成阅读理解任务的示例。图1示例中前四句陈述句是人工合成的文章内容,Q是问题,而A是标准答案。


     图1. 人工合成阅读理解任务示例

Cloze-style queries是类似于“完形填空”的任务,就是让计算机阅读并理解一篇文章内容后,对机器发出问题,问题往往是抽掉某个单词或者实体词的一个句子,而机器回答问题的过程就是将问题句子中被抽掉的单词或者实体词预测补全出来,一般要求这个被抽掉的单词或者实体词是在文章中出现过的。图2展示了完形填空式阅读理解任务的示例。图中表明了文章内容、问题及其对应的答案。这个例子是将真实的新闻数据中的实体词比如人名、地名等隐去,用实体标记符号替换掉实体词具体名称,问题中一般包含个占位符placeholder,这个占位符代表文章中的某个实体标记,机器阅读理解就是在文章中找出能够回答问题的某个真实答案的实体标记。目前的各种阅读理解任务中“完形填空式”任务是最常见的类型。


  

图2.完形填空式阅读理解

还有一种任务类型是选择题,就是阅读完一篇文章后,给出问题,正确答案是从几个选项中选择出来的,典型的任务比如托福的听力测试,目前也有研究使用机器来回答托福的听力测试,这本质上也是一种阅读理解任务。

图3.托福听力测试题示例

如果形式化地对阅读理解任务和数据集进行描述的话,可以将该任务看作是四元组:


其中,D代表一篇文章,Q代表针对文章内容提出的一个问题,A是问题的正确答案候选集合,而a代表正确答案。对于选择题类型来说,就是明确提供的答案候选集合而是其中的正确选项。对于人工合成任务以及完形填空任务来说,一般要求:

也就是说,要求候选答案是在文章中出现过的词汇或者实体词。

深度学习技术进展

本节内容对目前机器阅读理解领域中出现的技术方案进行归纳梳理,正像本文标题所述,我们只对深度学习相关的技术方案进行分析,传统技术方案不在讨论之列。

1 文章和问题的表示方法

用神经网络处理机器阅读理解问题,首先面临的问题就是如何表示文章和问题这两个最重要的研究对象。我们可以从现有机器阅读理解相关文献中归纳总结出常用的表示方法,当然这些表示方法不仅仅局限于阅读理解问题,也经常见于NLP其他子领域中。

<
  • 12
    点赞
  • 46
    收藏
    觉得还不错? 一键收藏
  • 9
    评论
### 回答1: 深度学习是一种机器学习的方法,它模仿人脑神经元之间的连接和传递信息的方式进行模型训练。通过构建多层神经网络来进行特征提取和分类任务,使得计算机可以从大量未标记数据中自动学习和识别模式。 深度学习的基础是神经网络,它由许多称为神经元的单元组成,每个神经元都有一组权重和激活函数。输入数据经过神经网络的多个层,通过不断调整权重和激活函数的方式进行特征提取和抽象,最终得到输出结果。深度学习的核心是反向传播算法,通过计算输出与实际结果之间的误差,并沿着网络反向更新权重和偏置,从而不断优化网络模型。 CSDN(中国软件开发者网)是一个IT技术社区平台,提供大量的技术文章、博客和论坛供人们学习和交流。在CSDN上,有很多关于深度学习基础的文章和教程,可以帮助初学者了解和掌握深度学习的基本概念和原理。例如,可以学习到如何构建神经网络、理解激活函数和损失函数的作用,以及如何使用反向传播算法进行神经网络的训练和优化。 通过在CSDN上学习深度学习的基础知识,可以为进一步深入研究和应用深度学习奠定基础。此外,CSDN还提供了丰富的案例和实践经验,可以帮助读者理解深度学习在图像识别、语音识别、自然语言处理等领域的应用,并提供相应源码和工具供读者参考和实践。 总之,深度学习基础是学习和应用深度学习的必要前提,通过在CSDN上学习深度学习的基本知识,可以为进一步深入学习深度学习打下坚实的基础。 ### 回答2: 深度学习是一种机器学习的方法,它模拟人脑神经网络的工作方式,通过将大量数据输入神经网络中的多层隐藏层进行训练,从而实现对数据进行自动化的特征提取和模式识别。深度学习具有强大的学习和泛化能力,能够在处理复杂任务时取得出色的效果。 深度学习的基础是神经网络。神经网络由多个节点(神经元)和它们之间的连接组成,每个节点接收一些输入信号并生成输出。神经网络通过调整节点之间的连接权重来学习输入和输出之间的关系。深度学习则是在神经网络的基础上使用多层隐藏层来提高学习能力。 深度学习的训练过程通常使用反向传播算法,该算法将网络的输出与真实标签进行比较并计算误差,然后通过调整网络中的参数使得误差最小化。深度学习网络的参数优化通常使用梯度下降算法,该算法沿着误差曲面的负梯度方向更新网络参数。 深度学习在各种领域都展现出巨大的应用潜力。在计算机视觉领域,深度学习已经取得了很多重要的突破,如人脸识别、物体检测和图像分类等。在自然语言处理领域,深度学习也被用于机器翻译、语音识别和情感分析等任务。此外,深度学习还被广泛应用于推荐系统、金融预测和医学影像分析等领域。 在学习深度学习的过程中,可以参考CSDN(中国最大的技术社区)提供的相关资源和教程。CSDN上有很多深度学习的入门教程和实践案例,可以帮助初学者理解深度学习的基本概念和原理,同时也可以了解最新的研究进展和应用案例。通过阅读CSDN上的深度学习文章和博客,可以不断扩展自己的知识和技能,并且可以和其他学习者一起交流和分享经验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值